fish: fix compilation with mips64
authorRosen Penev <[email protected]>
Wed, 22 Oct 2025 20:01:21 +0000 (13:01 -0700)
committerGeorge Sapkin <[email protected]>
Sat, 1 Nov 2025 23:21:45 +0000 (01:21 +0200)
Upstream backport.

Signed-off-by: Rosen Penev <[email protected]>
utils/fish/Makefile
utils/fish/patches/010-mips.patch [new file with mode: 0644]

index 389c704d82f263c0db55e4137cd3b57e7549c413..e6d3219dfaff5ebe702928c137fc64160dfed256 100644 (file)
@@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fish
 PKG_VERSION:=4.1.2
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=https://github.com/fish-shell/fish-shell/releases/download/$(PKG_VERSION)
diff --git a/utils/fish/patches/010-mips.patch b/utils/fish/patches/010-mips.patch
new file mode 100644 (file)
index 0000000..2220665
--- /dev/null
@@ -0,0 +1,41 @@
+From 41636c8e356afe5c79c7023d93e68e423204d099 Mon Sep 17 00:00:00 2001
+From: Johannes Altmanninger <[email protected]>
+Date: Fri, 17 Oct 2025 14:58:55 +0200
+Subject: [PATCH] Fix build on Linux/MIPS
+
+Fixes #11965
+---
+ CHANGELOG.rst |  2 ++
+ src/signal.rs | 10 +++++++++-
+ 2 files changed, 11 insertions(+), 1 deletion(-)
+
+--- a/CHANGELOG.rst
++++ b/CHANGELOG.rst
+@@ -556,6 +556,8 @@ Other improvements
+ For distributors
+ ----------------
++- Fixed build on MIPS machines (:issue:`11965`).
++- Fixed broken universal variables on Cygwin (:issue:`11948`).
+ fish has been ported to Rust. This means a significant change in dependencies, which are listed in the README. In short, Rust 1.70 or greater is required, and a C++ compiler is no longer needed (although a C compiler is still required, for some C glue code and the tests).
+--- a/src/signal.rs
++++ b/src/signal.rs
+@@ -417,7 +417,15 @@ const SIGNAL_TABLE : &[LookupEntry] = &[
+     #[cfg(any(apple, bsd))]
+     signal_entry!(SIGINFO, SIGINFO_DESC),
+-    #[cfg(target_os = "linux")]
++    #[cfg(all(
++        target_os = "linux",
++        not(any(
++            target_arch = "mips",
++            target_arch = "mips32r6",
++            target_arch = "mips64",
++            target_arch = "mips64r6",
++        ))
++    ))]
+     signal_entry!(SIGSTKFLT, SIGSTKFLT_DESC),
+     #[cfg(target_os = "linux")]